草庐IT

Android Test测试前提条件

全部标签

javascript - 如何对网络套接字进行单元测试 - JavaScript

我想测试使用sockjs实现的网络套接字.varsock=newSockJS('http://mydomain.com/my_prefix');sock.onopen=function(){console.log('open');};sock.onmessage=function(e){console.log('message',e.data);};sock.onclose=function(){console.log('close');};我目视了一下,只找到了这个article.这还不够好,因为它是在建立实际联系而不是伪造联系。我也试过,但只找到一个未回答的问题here.有人建议使

javascript - 如何使用 jest 使用 Promise.all 设置多次提取测试

我正在使用jest进行测试。我正在使用react和redux,我有这个Action:functiongetData(id,notify){return(dispatch,...)=>{dispatch(anotherFunction());Promise.all(['resource1','resource2','resource3']).then(([response1,response2,response3])=>{//...handleresponses}).catch(error=>{dispatch(handleError(error));}};}我一直在Jest文档中寻找如

javascript - 复杂的javascript条件表达式

解释这个复杂的javascript表达式的正确方法是什么?一些_条件?a=b:c=d=e;遵循运算符优先级规则,我希望它是:(some_condition?a=b:c)=d=e;但是看起来分组实际上是:编辑:(原来的分组不清楚。更新见下文)编辑:some_condition?a=b:(c=d=e);为什么会这样?(不,我没有写那个代码)编辑:这似乎表明在Javascript中说?:的优先级高于=并不完全正确。再举个例子:x=y?a=b:c=d=e;如果?:的优先级高于=(如在C中),则分组将是x=((y?a=b:c)=(d=e));而是(从答案中)我们拥有的是x=(y?a=b:(c=d

javascript - 测试失败后如何让 jasmine.js 停止?

我希望运行者在第一次失败后停止,而不是运行所有测试。 最佳答案 这是一个hack,但您可以通过在第一次测试之前插入此脚本来做到这一点;//aftereverytesthasrunafterEach(function(){//checkifanyhavefailedif(this.results_.failedCount>0){//ifso,changethefunctionwhichshouldmovetothenexttestjasmine.Queue.prototype.next_=function(){//toinsteads

javascript - 我可以在浏览器中查看在 casperjs 中运行的测试脚本以便于跟踪吗

您好,我在我的Web应用程序中使用jquery和Ajax作为前端,所以我正在使用casperjs自动化测试环境。由于使用jquery-ajax,我无法跟踪应用程序是否加载了页面以及许多其他事件。所以在开发期间,我正在考虑在浏览器中而不是以文本模式查看操作。是否有可能查看通过浏览器操作运行的测试脚本? 最佳答案 是的,在casper中使用slimerJS(gecko->firefox)引擎:http://slimerjs.org/它会打开firefox,您将在浏览器中看到您的自动测试。这个答案可能会让您感兴趣:Isthereawayt

javascript - 如何在 AngularJS e2e 测试中测试拖放功能

我正在尝试测试我的应用程序,我需要将小部件从一个位置移动到另一个位置,换句话说,我需要在端到端测试中测试拖放功能。我将如何测试它? 最佳答案 我遇到了同样的问题。我的解决方案是遵循此处Selenium问题中的建议:https://code.google.com/p/selenium/issues/detail?id=3604#c20从@nilsK的例子开始,这是我的解决方案:varyourOffset={x:5,y:5};ptor().actions().mouseMove(yourElement,yourOffset).mouse

javascript - for循环中的多个条件

如何编写具有多个条件的for循环?预期的Javascript:for(k=1;k1234;k++){myThing.action();}js2coffee.org指出我应该使用while循环:k=1whilek1234myThing.action()k++但这最终会编译回javascript中的while循环。有没有一种方法可以编写coffeescript来编译成我想要的javascript并在for循环本身中包含额外的条件?如果该问题的答案是错误的,那么使用coffeescript获得相同功能的最佳方式是什么?到目前为止,我最好的while循环解决方案是k=1myThing.acti

javascript - 如何在指令上测试 Angular $destroy 事件?

指令(隔离作用域、嵌入、替换)将掩码插入到中.varmask=angular.element('');$document.find('body').append(mask);scope.$on('$destroy',function(){mask.remove();});我正在尝试通过范围内的简单广播来测试这种情况:var$document,scope,element,rootScope;beforeEach(inject(function($compile,_$document_,$rootScope,$injector){rootScope=$injector.get('$root

javascript - javascript getter 的 Jasmine 测试不起作用

我正在为angularjs工厂编写一些测试,但有些期望不起作用,我真的不知道为什么。这是我的工厂(其中的一部分)。'使用严格';angular.module('myAppMod').factory('Person',function(BaseModel){returnBaseModel.extend({getfullname(){varname=[];if(this.first_name){name.push(this.first_name);}if(this.person_extra&&this.person_extra.middle_name){name.push(this.per

javascript - 如何对 WebGL 着色器进行基准测试?

可以通过计算他在一秒钟内调用这些函数的次数来对常规JavaScript函数进行基准测试。但是,在WebGL上,gl.drawArrays等函数是异步的,因此您无法通过对API调用进行基准测试来衡量着色器所花费的时间。有什么方法可以对WebGL函数进行基准测试吗? 最佳答案 很难对着色器进行基准测试,因为有大量的上下文,而且它们非常特定于GPU。您可以通过使用performance.now来判断一个着色器是否比另一个着色器快通过调用gl.readPixels获取GPU。它会告诉你哪个更快。它不会告诉您它们有多快,因为停止GPU包括开始